The Internet of Things (IoT) is the internetworking of physical devices, vehicles, smart devices, connected devices, and/or other items that are capable of collecting and exchanging data. Developers working on IoT applications typically program a system that includes many components, such as computer system side logic, Web applications (or Apps), mobile applications (or Apps) as well as IoT device logic. Separate tools are currently used to create the application code. Dedicated development environments are typically used for deployment to the different targets and platforms. However, setting up and maintaining these development environments create a significant amount of overhead and are error-prone.